package cn.xfdzx.android.apps.shop.contract;

import java.util.Map;

import cn.xfdzx.android.apps.shop.base.BaseView;
import cn.xfdzx.android.apps.shop.bean.BluePrintContentBean;
import cn.xfdzx.android.apps.shop.bean.CarCountBeen;
import cn.xfdzx.android.apps.shop.bean.LogininfoBean;
import cn.xfdzx.android.apps.shop.bean.VersionInfoBean;
import io.reactivex.Flowable;


/**
 * @author azheng
 * @date 2018/6/4.
 * Description：
 */

public interface CarNumContract {
    interface Model {
        Flowable<CarCountBeen> carNum(String index_status, String store_id);

        Flowable<LogininfoBean> getLiveImLogin(String id,String type);

        Flowable<VersionInfoBean> getVersionInfo();

        Flowable<VersionInfoBean> getEquipmentNumber(Map<String, Object> map);

        Flowable<BluePrintContentBean> getPrintingContent(String order_id);
    }

    interface View extends BaseView {
        @Override
        void showLoading();

        @Override
        void hideLoading();

        @Override
        void onError(Throwable throwable);

        void onCarNumSuccess(CarCountBeen bean);

        void getLiveImLoginSuccess(LogininfoBean bean);

        void onVersionInfoSuccess(VersionInfoBean bean);

        void onEquipmentNumberSuccess(VersionInfoBean bean);

        void getPrintingContentSuccess(BluePrintContentBean bean);
    }

    interface Presenter {
        /**
         *
         */
        void carNum(String index_status, String store_id);

        /**
         * IM登录
         *
         * @param type
         */
        void getLiveImLogin(String id,String type);

        /**
         * 获取版本信息
         *
         */
        void getVersionInfo();

        /**
         * 获取极光设备号
         *
         */
        void getEquipmentNumber(Map<String, Object> map);

        /**
         * 获取蓝牙打印小票信息
         */
        void getPrintingContent(String order_id);
    }
}
